<!--
Copyright © 2017, Che-Wei Hsu <cwxhsu@gmail.com>
This file is part of the MintCM.
Some rights reserved. See README.
-->

<html>

<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="../css/mcm_style.css">
</head>

<body class="css_body">

<div class="css_div_box_frame_full">
  <div class="css_div_box_title">chapter 07-02</div>
  <div class="css_div_box_content">
  </div>
</div>
<br>

<div class="css_div_box_frame_full">
  <div class="css_div_box_title">還原預設值 (內部)</div>
  <div class="css_div_box_content">
    <br>

    此章節說明當資料現在值檔案損毀導致資料錯誤時, 如何使用 [還原預設值 (內部)] 模式做處理.
    <br><br>

  </div>
</div>
<br>

<div class="css_div_box_frame_full">
  <div class="css_div_box_title">使用方式</div>
  <div class="css_div_box_content">
    <br>

    使用 [還原預設值 (內部)] 模式時系統的處理步驟 :<br>
    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">01.&nbsp;</td>
        <td class="css_td_list1_r">
          載入資料現在值檔案, 檢查資料有無錯誤.
          <table class="css_table_list1">
            <tr>
              <td class="css_td_list1_l">a.&nbsp;</td>
              <td class="css_td_list1_r">
                如果是 <font class="css_font_g1">能夠檢測到並且可以標記的錯誤</font>
                <a href="mcm_0701.html#hook_0701_detect_and_mark_01">[詳細]</a>,
                將該筆資料貼上對應的錯誤狀態.
              </td>
            </tr>
            <tr>
              <td class="css_td_list1_l">b.&nbsp;</td>
              <td class="css_td_list1_r">
                如果是 <font class="css_font_g1">能夠檢測到<font class="css_font_r1">但是無法標記</font>的錯誤</font>
                <a href="mcm_0701.html#hook_0701_detect_not_mark_01">[詳細]</a>,
                只會顯示有錯誤, 不會貼上對應的錯誤狀態.
              </td>
            </tr>
          </table>
        </td>
      </tr>
      <tr>
        <td class="css_td_list1_l">02.&nbsp;</td>
        <td class="css_td_list1_r">
          檢查每筆資料的狀態是否被貼上錯誤, 如果是, 開始還原預設值處理.
          <table class="css_table_list1">
            <tr>
              <td class="css_td_list1_l">a.&nbsp;</td>
              <td class="css_td_list1_r">
                刪除資料現在值檔案
              </td>
            </tr>
            <tr>
              <td class="css_td_list1_l">b.&nbsp;</td>
              <td class="css_td_list1_r">
                載入資料預設值檔案.
              </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    <br>

    不需要做額外的處理, 系統會自動還原到預設值.
    <br><br>

  </div>
</div>
<br>

<div class="css_div_box_frame_full">
  <div class="css_div_box_title">範例程式的使用</div>
  <div class="css_div_box_content">
    <br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">01.&nbsp;</td>
        <td class="css_td_list1_r">
          範例程式目錄在 <font class="css_font_b1">mint_cm/usage/example/0702</font>.
        </td>
      </tr>
    </table>
    <br><br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">02.&nbsp;</td>
        <td class="css_td_list1_r">
          下面關於 <font class="css_font_p1">make</font> 的操作沒有特別註明的話都是在
          <font class="css_font_b1">mint_cm</font> 目錄.
        </td>
      </tr>
    </table>
    <br><br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">03.&nbsp;</td>
        <td class="css_td_list1_r">
          第一次使用, 使用 <font class="css_font_p1">make example_add KEY=0702</font>
          載入範例並編譯.
        </td>
      </tr>
    </table>
    <br><br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">04.&nbsp;</td>
        <td class="css_td_list1_r">
          執行 mcm_daemon 並加入 <font class="css_font_p1">-e 0</font> 參數就可以看到結果.<br>
          注意當程式檢查到錯誤並執行處理後, mcm_store_profile_current.txt 會重新產生並且內容是正確的.
        </td>
      </tr>
    </table>
    <br><br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">05.&nbsp;</td>
        <td class="css_td_list1_r">
          測試完畢不使用後, 使用 <font class="css_font_p1">make example_del KEY=0702</font>
          將範例移除.
        </td>
      </tr>
    </table>
    <br><br>

    <table class="css_table_list1">
      <tr>
        <td class="css_td_list1_l">06.&nbsp;</td>
        <td class="css_td_list1_r">
          範例程式目錄下的檔案在做完 <font class="css_font_p1">make example_add</font>
          後會複製到真正使用的位置, 要修改做測試的話要改在複製後的.<br>
          <table class="css_table_list2">
            <tr>
              <td class="css_td_list2_r1">
                來源 <font class="css_font_b1">profile/mcm_data_profile_0702.xml</font><br>
                目地 <font class="css_font_b1">mint_cm/mcm_build/mcm_data_profile.xml</font><br>
                資料模型範例<br>
                有修改要使用 <font class="css_font_p1">make all</font> 重新編譯
              </td>
            </tr>
            <tr>
              <td class="css_td_list2_r1">
                來源 <font class="css_font_b1">profile/mcm_store_profile_default_0702.txt</font><br>
                目地 <font class="css_font_b1">mint_cm/mcm_build/mcm_store_profile_default.txt</font><br>
                資料預設值範例<br>
                使用 <font class="css_font_p1">make all</font> 後會再複製到 <font class="css_font_b1">mint_cm/run</font>
              </td>
            </tr>
            <tr>
              <td class="css_td_list2_r1">
                來源 <font class="css_font_b1">profile/mcm_store_profile_current_0702.txt</font><br>
                目地 <font class="css_font_b1">mint_cm/run/mcm_store_profile_current.txt</font><br>
                資料現在值範例<br>
              </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    <br>

  </div>
</div>
<br>

</body>

</html>
